﻿#define _CRT_SECURE_NO_WARNINGS 1

//#include <stdio.h>
//#include <stdlib.h>
//
////设置控制台的显示大小、名称
//int main()
//{
//	system("mode con cols=100 lines=30");
//	system("title 贪吃蛇");
//	system("pause");//pause 暂停
//
//	return 0;
//}


//#include <windows.h>
//#include <stdbool.h>
//
//int main()
//{
//	//COORD pos = { 40, 10 };
//
//	CONSOLE_CURSOR_INFO cursor_info = { 0 };
//
//	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
//	GetConsoleCursorInfo(handle, &cursor_info);
//	//cursor_info.dwSize = 100;
//	cursor_info.bVisible = false;//隐藏；false需要头文件 stdbool.h
//	SetConsoleCursorInfo(handle, &cursor_info);
//
//	return 0;
//}




//#include <stdio.h>
//#include <windows.h>
//
//int main()
//{
//	//获得设备句柄
//	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
//	//根据句柄设置光标的位置
//	COORD pos = { 20, 5 };
//	SetConsoleCursorPosition(handle, pos);
//	printf("hehe\n");
//
//	return 0;
//}

//#include <stdio.h>
//#include <windows.h>
//
//void SetPos(int x, int y)
//{
//	//获得设备句柄
//	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
//	//根据句柄设置光标的位置
//	COORD pos = { x, y };
//	SetConsoleCursorPosition(handle, pos);
//}
//
//int main()
//{
//	SetPos(20, 5);
//	printf("hehe\n");
//	SetPos(10, 5);
//	printf("haha\n");
//	SetPos(10, 5);
//	printf("heihei\n");
//
//	return 0;
//}



//#include <windows.h>
//#include <stdio.h>
//
//#define KEY_PRESS(vk) (GetAsyncKeyState(vk) & 0x1 ? 1 : 0)
//
//int main()
//{
//	while (1)
//	{
//		if (KEY_PRESS(0x30))
//		{
//			printf("0\n");
//		}
//		else if (KEY_PRESS(0x31))
//		{
//			printf("1\n");
//		}
//		else if (KEY_PRESS(0x32))
//		{
//			printf("2\n");
//		}
//		else if (KEY_PRESS(0x33))
//		{
//			printf("3\n");
//		}
//		else if (KEY_PRESS(0x34))
//		{
//			printf("4\n");
//		}
//		else if (KEY_PRESS(0x35))
//		{
//			printf("5\n");
//		}
//		else if (KEY_PRESS(0x36))
//		{
//			printf("6\n");
//		}
//		else if (KEY_PRESS(0x37))
//		{
//			printf("7\n");
//		}
//		else if (KEY_PRESS(0x38))
//		{
//			printf("8\n");
//		}
//		else if (KEY_PRESS(0x39))
//		{
//			printf("9\n");
//		}
//	}
//
//	return 0;
//}


//#include <locale.h>
//#include <stdio.h>
//
//int main()
//{
//	char* loc;
//	loc = setlocale(LC_ALL, NULL);//返回值是一个字符串指针，表示已经设置好的格式。如果调用失败，则返回空指针NULL。第二个参数设为NULL可以用来查询当前地区。
//	printf("默认的本地信息：%s\n", loc);
//
//	loc = setlocale(LC_ALL, "");
//	printf("设置后的本地信息：%s\n", loc);
//
//	return 0;
//}



///* setlocale example */
//#include <stdio.h>      /* printf */
//#include <time.h>       /* time_t, struct tm, time, localtime, strftime */
//#include <locale.h>     /* struct lconv, setlocale, localeconv */
//
//int main()
//{
//	time_t rawtime;
//	struct tm* timeinfo;
//	char buffer[80];
//
//	struct lconv* lc;
//
//	time(&rawtime);
//	timeinfo = localtime(&rawtime);
//
//	int twice = 0;
//
//	do {
//		printf("Locale is: %s\n", setlocale(LC_ALL, NULL));
//
//		strftime(buffer, 80, "%c", timeinfo);
//		printf("Date is: %s\n", buffer);
//
//		lc = localeconv();
//		printf("Currency symbol is: %s\n-\n", lc->currency_symbol);
//
//		setlocale(LC_ALL, "");
//	} while (!twice++);//这样写只会循环两次
//
//	return 0;
//}


//#include <stdio.h>
//#include <locale.h>
//
//int main()
//{
//	setlocale(LC_ALL, "");
//
//	wchar_t ch1 = L'中';
//	wchar_t ch2 = L'国';
//	wchar_t ch3 = L'★';
//	wchar_t ch4 = L'●';
//
//	wprintf(L"%lc\n", ch1);
//	wprintf(L"%lc\n", ch2);
//	wprintf(L"%lc\n", ch3);
//	wprintf(L"%lc\n", ch4);
//
//	//宽字符串的打印用%ls
//
//	printf("ab\n");
//
//	return 0;
//}